﻿using System;

using System.IdentityModel.Tokens;

namespace AMT.IdentityModel.OAuth
{
	/// <summary>
	/// Represents a Simple Web Token identity claim based on user name and password (plain-text)
	/// </summary>
	public class SWTUserPasswordClaimToken : UserNameSecurityToken
	{
		public SWTUserPasswordClaimToken(string userName, string password)
			: base(userName, password)
		{
			if (null == userName) throw new ArgumentNullException("userName");
			if (string.IsNullOrEmpty(userName)) throw new ArgumentException("Invalid: userName is empty");
		}

		#region Invalid or unimplemented SecurityToken methods
		public override string Id
		{
			get { throw new NotImplementedException(); }
		}

		public override System.Collections.ObjectModel.ReadOnlyCollection<SecurityKey> SecurityKeys
		{
			get { throw new NotImplementedException(); }
		}

		public override DateTime ValidFrom
		{
			get { throw new NotImplementedException(); }
		}

		public override DateTime ValidTo
		{
			get { throw new NotImplementedException(); }
		}
		#endregion
	}
}
